home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_asm / objxref / xrdisp.asm < prev    next >
Encoding:
Assembly Source File  |  1986-04-27  |  2.1 KB  |  95 lines

  1.  PAGE    81,128
  2.  TITLE    XRDISP    - Display module for review of Cross Ref file
  3.  SUBTTL    V1.0 - May 1986    - Cross    Reference Facility
  4. ;
  5. ;=============================================================================|
  6. ;         Copyright 1986 - Dan Daetwyler - Springdale, AR 72764          |
  7. ;=============================================================================|
  8.     IF1
  9.     INCLUDE    SDA.MAC
  10.     ENDIF
  11.     .SALL
  12. ;
  13. DATA    SEGMENT    BYTE PUBLIC 'DATA'
  14. ;
  15.     EXTRN    XRDSCR:BYTE,FNAM:BYTE
  16. ;
  17.     PUBLIC    STAB
  18.     .XLIST
  19.     INCLUDE    SCTAB.INC
  20.     .LIST
  21. STAB    SCTAB    <,1,1,FLDTAB>
  22. FLDTAB    DB    1,1
  23.     DW    FNAM
  24. ;
  25. FKY1    DB    'FILE',0,'PUBLIC',0,0,0,0,0,0,0,0,'EXIT',0
  26.     DW    0
  27. ;
  28. WTG    DB    59,60,68
  29. WTGA    DW    XRFILE,XRNAME,EXIT
  30. ;
  31. DATA    ENDS
  32. ;
  33. STACK    SEGMENT    PARA STACK 'STACK'
  34.     DB    20 DUP ('STACK')
  35. STACK    ENDS
  36. ;
  37. CODE    SEGMENT    BYTE PUBLIC 'CODE'
  38.     ASSUME    CS:CODE,DS:DATA,ES:DATA
  39. ;
  40. ;==============================================================================
  41. ; Entry    Point    XRDISP                                  |
  42. ;==============================================================================
  43. ;                                          |
  44. ; This is the main module for the display of the cross reference file.    As    |
  45. ; such it provides the main control for    the subordinate    modules    used in          |
  46. ; performing the actual    data display.                          |
  47. ;                                          |
  48. ; Entry    conventions:    None.                              |
  49. ;                                          |
  50. ; Returns:        None.                              |
  51. ;                                          |
  52. ;==============================================================================
  53. ;
  54.     EXTRN    XRFILE:NEAR,XRNAME:NEAR
  55. ;
  56.     PUBLIC    XRDISP
  57. ;
  58. XRDISP    PROC    FAR
  59.     PUSH    DS
  60.     XOR    AX,AX
  61.     PUSH    AX
  62.     MOV    AX,DATA
  63.     MOV    DS,AX
  64.     MOV    ES,AX
  65.     $FDDTS    ON            ;Turn time tick
  66. RBLD:    $SDISPX    XRDSCR            ;Put up    screen
  67.     $SFUNK    STAB,25,FKY1
  68. RFRSH:    $SERRM    STAB,0,0
  69.     $DISPLY    STAB,0,0,,0
  70.     TEST    STAB.TFL,1
  71.     JZ    RFRSH
  72.     MOV    AL,STAB.TVL
  73.     XOR    BX,BX
  74.     MOV    CX,3
  75. CLP:    CMP    AL,WTG[BX]
  76.     JE    HIT
  77.     INC    BX
  78.     LOOP    CLP
  79.     JMP    RFRSH
  80. HIT:    SHL    BX,1
  81.     CALL    WTGA[BX]
  82.     JMP    RFRSH
  83. ;
  84. EXIT:    POP    AX            ;Discard level
  85.     $FDDTS    OFF            ;Turn off tick
  86.     $SCATR    7            ;Restore normal    attribute
  87.     $SCCLR    FULL            ;Clear the screen
  88.     $SCURA    ON,LINE            ;and restore cursor
  89.     RET
  90. XRDISP    ENDP
  91. ;
  92. CODE    ENDS
  93. ;
  94.     END    XRDISP
  95.